#ifndef ARCHIVODEESTRUCTURASFIJAS_H_
#define ARCHIVODEESTRUCTURASFIJAS_H_
#include "Archivo.h"
#include <sstream>
namespace Archivos {

class ArchivoDeEstructurasFijas : public Archivo {

private:
	unsigned int tamanioDeLasEstructuras;

	unsigned int traducirPosicionANumeroDeEstructura(unsigned int posicionEnElArchivo);
	unsigned int traducirNumeroDeEstructuraAPosicion(unsigned int numeroDeEstructura);

public:

	ArchivoDeEstructurasFijas(string path, unsigned int tamanioDeLasEstructuras);

	virtual void leer(IEntidad* entidad,unsigned int numeroDeEntidad);
	virtual unsigned int insertar(IEntidad* entidad);
	virtual unsigned int modificar(IEntidad* entidad,unsigned int numeroDeEntidad);
	virtual bool borrar(IEntidad* entidad, unsigned int numeroDeEntidad);

	int getCantidadDeEstructuras();

	virtual ~ArchivoDeEstructurasFijas();
};

}

#endif /* ARCHIVODEESTRUCTURASFIJAS_H_ */
